#Programa que levanta el estado de la configuración y chequea el estado
#Devuelve 0 si esta COMPLETA
#Devuelve 1 si esta INCOMPLETA y deja la variable LISTA con la lista de cosas faltantes
#Devuelve 2 si no esta instalado

# **************** FUNCIONES *******************************
#Funcion que levanta el estado del archivo a las variables
function levantar_state
{
	IFS='='
	while read -r var valor usr fecha
	do
		if [ $var == "GRUPO" ]
		 then
		 	GRUPO=$valor
		elif [ $var == "CONFDIR" ] 
		 then
		 	CONFDIR=$valor
		elif [ $var == "BINDIR" ]
		 then
		 	BINDIR=$valor
		elif [ $var == "MAEDIR" ]
		 then
		 	MAEDIR=$valor
		elif [ $var == "ARRIDIR" ] 
		 then
		 	ARRIDIR=$valor
		elif [ $var == "ACEPDIR" ]
		 then
		 	ACEPDIR=$valor
		elif [ $var == "RECHDIR" ]
		 then
		 	RECHDIR=$valor
		elif [ $var == "PROCDIR" ] 
		 then
		 	PROCDIR=$valor
		elif [ $var == "REPODIR" ]
		 then
		 	REPODIR=$valor
		elif [ $var == "LOGDIR" ]
		 then
		 	LOGDIR=$valor
		elif [ $var == "LOGEXT" ] 
		 then
		 	LOGEXT=$valor
		elif [ $var == "LOGSIZE" ]
		 then
		 	LOGSIZE=$valor
		elif [ $var == "DATASIZE" ]
		 then
		 	DATASIZE=$valor
		fi
	done <$CONFFILE
	return 0
}

#Funcion que se fija el estado del sistema
#Devuelve 0 si esta COMPLETA
#Devuelve 1 si esta INCOMPLETA y deja la variable LISTA con la lista de cosas faltantes
#Devuelve 2 si no esta instalado
function check_state
{
	declare local state
	if ! [ -f $CONFFILE ]
	 then
		return 2
	else
		levantar_state
	fi
	#Check que este todo correcto
	#Veo si estan las carpetas creadas
	if [ ! -d "$GRUPO/$BINDIR" ]
	 then
	 	LISTA=$LISTA"
No se encuentra $GRUPO/$BINDIR"
	fi
	if [ ! -d "$GRUPO/$MAEDIR" ]
	 then
	 	LISTA=$LISTA'
No se encuentra '"$GRUPO/$MAEDIR"
	else
		#Esta MAEDIR veo si tiene los Archivos Maestros
		if [ $(ls $GRUPO/$MAEDIR/"PPI.mae"| wc -l) -lt 1 ]
		 then
			LISTA=$LISTA'
No se encuentra el "Archivo Maestro Contable de Préstamos Personales en '"$GRUPO/$MAEDIR"
		fi
		if [ $(ls $GRUPO/$MAEDIR/"P-S.mae"| wc -l) -lt 1 ]
		 then
			LISTA=$LISTA'
No se encuentra el "Archivo Maestro de Paises y Sistemas en '"$GRUPO/$MAEDIR"
		fi
	fi
	if [ ! -d "$GRUPO/$ARRIDIR" ]
	 then
	 	LISTA=$LISTA'
No se encuentra '"$GRUPO/$ARRIDIR"
	fi
	if [ ! -d "$GRUPO/$RECHDIR" ]
	 then
	 	LISTA=$LISTA'
No se encuentra '"$GRUPO/$RECHDIR"
	fi
	if [ ! -d "$GRUPO/$ACEPDIR" ]
	 then
	 	LISTA=$LISTA'
No se encuentra '"$GRUPO/$ACEPDIR"
	fi
	if [ ! -d "$GRUPO/$PROCDIR" ]
	 then
	 	LISTA=$LISTA'
No se encuentra '"$GRUPO/$PROCDIR"
	fi
	if [ ! -d "$GRUPO/$LOGDIR" ]
	 then
	 	LISTA=$LISTA'
No se encuentra '"$GRUPO/$LOGDIR"
	fi
	if [ ! -d "$GRUPO/$REPODIR" ]
	 then
	 	LISTA=$LISTA'
No se encuentra '"$GRUPO/$REPODIR"
	fi
	#Veo Si esta la tabla de separadores y la tabla de campos en el directorio
	#CONFDIR
	if [ $(ls -l $CONFDIR/"T1.tab" | wc -l) -ne 1 ]
		 then
		 LISTA=$LISTA'
No se encuentra la Tabla de Separadores (T1.tab) en '"$GRUPO/$CONFDIR"
	fi
	if [ $(ls -l $CONFDIR/"T2.tab" | wc -l) -ne 1 ]
		 then
		 LISTA=$LISTA'
No se encuentra la Tabla de Campos (T2.tab) en '"$GRUPO/$CONFDIR"
	fi
	
	state=${LISTA:-"COMPLETA"}
	if [ "$state" != 'COMPLETA' ]
	 then
	 	return 1
	fi
	return 0
}
# **************** FIN FUNCIONES ***************
# **************** PRINCIPAL********************
check_state
return $?
# **************** FIN PRINCIPAL ***************
